package Persistencia.DAO;

import org.hibernate.Session;
import org.hibernate.SessionFactory;

import Persistencia.Entidad.Fecha;
import Persistencia.Entidad.Partido;
import  Persistencia.Entidad.EstadoDeFecha;

public class DAOPartido {

	public Partido getPartido(int idPartido) {
		SessionFactory sf = HibernateUtil.getSessionFactory();
	    Session sesion = sf.openSession();
	    sesion.beginTransaction();
	    
	    Partido partido = null;
	    
	    try {
	    	partido = (Partido) sesion.get(Partido.class, idPartido);
	    }
	    catch (Exception ex) {
	    	ex.printStackTrace();
	    }
	    finally {
	    	sesion.close();
	    }
		
		return partido;
	}

	public void updatePartido(Partido partido) {
		SessionFactory sf = HibernateUtil.getSessionFactory();
	    Session sesion = sf.openSession();
	    sesion.beginTransaction();
	    
	    try {
	    	sesion.update(partido);
		    sesion.getTransaction().commit();
	    }
	    catch (Exception ex) {
	    	sesion.getTransaction().rollback();
	    	ex.printStackTrace();
	    }
	    finally {
	    	sesion.close();
	    }
	}

	public  EstadoDeFecha getEstadoDeFecha(int id_estado_fecha) {
		SessionFactory sf = HibernateUtil.getSessionFactory();
		Session sesion = sf.openSession();
		sesion.beginTransaction();
		    
		EstadoDeFecha estadoDeFecha = null;
		   
		try {
		   	estadoDeFecha = (EstadoDeFecha) sesion.get(EstadoDeFecha.class, id_estado_fecha);
		}
		    catch (Exception ex) {
	    	ex.printStackTrace();
	    }
	    finally {
	    	sesion.close();
	    }
		
		return estadoDeFecha;
	}

	public Fecha getFecha(int idFecha) {
		SessionFactory sf = HibernateUtil.getSessionFactory();
		Session sesion = sf.openSession();
		sesion.beginTransaction();
		    
		Fecha fecha = null;
		   
		try {
		   	fecha = (Fecha) sesion.get(Fecha.class, idFecha);
		}
		    catch (Exception ex) {
	    	ex.printStackTrace();
	    }
	    finally {
	    	sesion.close();
	    }
		
		return fecha;
	}

	public void updateFecha(Fecha fecha) {
		SessionFactory sf = HibernateUtil.getSessionFactory();
	    Session sesion = sf.openSession();
	    sesion.beginTransaction();
	    
	    try {
	    	sesion.update(fecha);
		    sesion.getTransaction().commit();
	    }
	    catch (Exception ex) {
	    	sesion.getTransaction().rollback();
	    	ex.printStackTrace();
	    }
	    finally {
	    	sesion.close();
	    }
	}
	
}
	
	
	
